---
title: "Gender Protesting 2023 (Data Cleaning and Creating Working Data)"
author: "Martin Naunov"
date: "10/19/2021"
output: pdf_document
---


```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE, warning=FALSE,message=FALSE)
setwd("/Users/martinnaunov/Desktop/Gender Protesting Data")
```

```{r, include=FALSE}
#rm(list=ls())
```

```{r}
setwd("/Users/martinnaunov/Desktop/Gender Protesting Data")

gp <- read.csv("gp_data.csv")
gp_1 <- gp[-c(1,2),]

gp_1$respondent <- seq.int(nrow(gp_1))
```

#DEMOGRAPHICS
```{r}
library(dplyr)
gp_1<-gp_1 %>% 
  dplyr::rename(
    edu = Edu.)

gp_1$edu<-as.factor(gp_1$edu)
gp_1$edu<-recode(gp_1$edu,
                           "Дошкольное" = 1, "Начальная школа" = 2, "Основное общее образование (9 классов)"=3, "Среднее общее образование (11 классов)"=4,"Среднее профессиональное образование (техникум, колледж, училище)"=5,"Высшее образования - бакалавриат"=6,"Высшее образование - специалитет, магистратура"=7,"Научная степень (кандидат, доктор наук)"=8,"Другое"=9)

#create a dummy -- if went to uni (1) if not 0

gp_1$uni <- NA

gp_1$uni <- ifelse(gp_1$edu <=5 | gp_1$edu==9, 0, 1)

table(gp_1$uni)

```

```{r}
#AGE
gp_1$age_b <- gp_1$age

gp_1$age_b<-recode(gp_1$age_b, "18 - 24"=1, 
                       "25 - 34"=2, "35 - 44"=3,"45 - 54"=4,"55 - 64"=5,"65 - 74"=6,"75 - 84"=7,
                   "85 или старше"=8)

gp_1$age_3 <- gp_1$age
gp_1$age_3<-recode(gp_1$age_3, "18 - 24"=1, 
                       "25 - 34"=1, "35 - 44"=2,"45 - 54"=2,"55 - 64"=3,"65 - 74"=3,"75 - 84"=3,
                   "85 или старше"=3)
#SEX
gp_1$sex_b <- gp_1$Sex

gp_1$sex_b<-recode(gp_1$sex_b, "женский"=0, 
                       "мужской"=1)

#RELIGION
unique(gp_1$religion)
gp_1$rel_b <- gp_1$religion

gp_1$rel_b<-recode(gp_1$rel_b, "Православие"=1, 
                       "Атеизм"=2, "Ислам"=3,"Агностицизм (верю в Высшую силу)"=4,"Католицизм"=5,"Другая"=6)

gp_1$orthodox<- NA

gp_1$orthodox <- ifelse(gp_1$rel_b > 1, 0, 1)

table(gp_1$orthodox)  

#INCOME
unique(gp_1$income)
gp_1$income_b <- gp_1$income

gp_1$income_b<-recode(gp_1$income_b, "Менее 5 000 рублей"=1, 
                       "От 5 001 до 10 000 рублей"=2, "От 10 001 до 20 000 рублей"=3,"От 20 001 до 30 000 рублей"=4,"От 30 001 до 40 000 рублей"=5,"От 40 001 до 50 000 рублей"=6,"От 50 001 до 70 000 рублей"=7,
                   "От 70 001 до 90 000 рублей"=8,"От 90 001 до 110 000 рублей"=9,"Свыше 110 000 рублей"=10)

#PUTIN'S SUPPORT
gp_1$putin_support <- as.numeric(gp_1$thermometer._1)

```

```{r Standardize}

range01 <- function(x,na.rm = T){(x-min(x, na.rm = T))/(max(x,na.rm = T)-min(x,na.rm = T))}

gp_1$putin_support_st <- range01(gp_1$putin_support)

gp_1$income_b_st <- range01(gp_1$income_b)

gp_1$age_b_st <- range01(gp_1$age_b)

```


#DVs

```{r creating a treatment variable}
#Create an indicator for what treatment group each respondent was assigned to
     #Men - 1 Women - 2 Traditional Women - 3 Non-traditional Women - 4

gp_1$condition <- NA

gp_1$viol_m[gp_1$viol_m == ""]<-NA
gp_1$viol_w[gp_1$viol_w == ""] <- NA
gp_1$viol_tw[gp_1$viol_tw == ""] <- NA
gp_1$viol_1_nw.[gp_1$viol_1_nw. == ""] <- NA


gp_1$condition[is.na(gp_1$viol_m) == FALSE] <- 1
gp_1$condition[is.na(gp_1$viol_w) == FALSE] <- 2
gp_1$condition[is.na(gp_1$viol_tw) == FALSE] <- 3
gp_1$condition[is.na(gp_1$viol_1_nw.) == FALSE] <- 4


```


## VIOLENCE 1
```{r creating viol1 variable}

gp_1 <- gp_1 %>% 
  dplyr::mutate(viol1 = viol_m, viol2 = viol_w,viol3=viol_tw,viol4=viol_1_nw.)

gp_1$violence_1 <- coalesce(gp_1$viol1,gp_1$viol2,gp_1$viol3,gp_1$viol4)
```

```{r recoding violence into numerical}

gp_1$violence_1<-recode(gp_1$violence_1, "Крайне маловероятно"=1, 
                         "В большей степени маловероятно"=2, "В какой-то степени маловероятно"=3,"Нечто среднее"=4,
                         "В какой-то степени вероятно"=5,"В большей степени вероятно"=6,
                        "Очень вероятно"=7)

```

```{r}
gp_1$condition_f <- as.factor(gp_1$condition)
levels(gp_1$condition_f)
```


## TOLERANCE 1
```{r creating tolerance 1 variable}

gp_1$toler_1_m_1[gp_1$toler_1_m_1 == ""]<-NA
gp_1$toler_1_w_1[gp_1$toler_1_w_1 == ""] <- NA
gp_1$toler_1_tw_1[gp_1$toler_1_tw_1 == ""] <- NA
gp_1$toler_1_nw_1[gp_1$toler_1_nw_1 == ""] <- NA

gp_1$toler_1_m_2[gp_1$toler_1_m_2 == ""]<-NA
gp_1$toler_1_w_2[gp_1$toler_1_w_2 == ""] <- NA
gp_1$toler_1_tw_2[gp_1$toler_1_tw_2 == ""] <- NA
gp_1$toler_1_nw_2[gp_1$toler_1_nw_2 == ""] <- NA

gp_1$toler_1_m_3[gp_1$toler_1_m_3 == ""]<-NA
gp_1$toler_1_w_3[gp_1$toler_1_w_3 == ""] <- NA
gp_1$toler_1_tw_3[gp_1$toler_1_tw_3 == ""] <- NA
gp_1$toler_1_nw_3[gp_1$toler_1_nw_3 == ""] <- NA

gp_1$toler_1_m_4[gp_1$toler_1_m_4 == ""]<-NA
gp_1$toler_1_w_4[gp_1$toler_1_w_4 == ""] <- NA
gp_1$toler_1_tw_4[gp_1$toler_1_tw_4 == ""] <- NA
gp_1$toler_1_nw_4[gp_1$toler_1_nw_4 == ""] <- NA

gp_1 <- gp_1 %>% 
  dplyr::mutate(t_1_m = toler_1_m_1, t_1_w = toler_1_w_1,t_1_t=toler_1_tw_1,t_1_n= toler_1_nw_1)

gp_1$tolerance_1 <- coalesce(gp_1$t_1_m,gp_1$t_1_w,gp_1$t_1_t,gp_1$t_1_n)

gp_1$tolerance_2 <- coalesce(gp_1$toler_1_m_2,gp_1$toler_1_w_2,gp_1$toler_1_tw_2,gp_1$toler_1_nw_2)

gp_1$tolerance_3 <- coalesce(gp_1$toler_1_m_3,gp_1$toler_1_w_3,gp_1$toler_1_tw_3,gp_1$toler_1_nw_3)

gp_1$tolerance_4 <- coalesce(gp_1$toler_1_m_4,gp_1$toler_1_w_4,gp_1$toler_1_tw_4,gp_1$toler_1_nw_4)

```


```{r recoding tolerance variables}

gp_1$tolerance_1<-recode(gp_1$tolerance_1, "Совершенно неоправданно"=1, 
                         "Скорее неоправданно"=2, "В какой-то степени неоправданно"=3,"Нечто среднее"=4,
                         "В какой-то степени оправданно"=5,"Скорее оправданно"=6,
                        "Совершенно оправданно"=7)

gp_1$tolerance_2<-recode(gp_1$tolerance_2, "Совершенно неоправданно"=1, 
                         "Скорее неоправданно"=2, "В какой-то степени неоправданно"=3,"Нечто среднее"=4,
                         "В какой-то степени оправданно"=5,"Скорее оправданно"=6,
                        "Совершенно оправданно"=7)

gp_1$tolerance_3<-recode(gp_1$tolerance_3, "Совершенно неоправданно"=1, 
                         "Скорее неоправданно"=2, "В какой-то степени неоправданно"=3,"Нечто среднее"=4,
                         "В какой-то степени оправданно"=5,"Скорее оправданно"=6,
                        "Совершенно оправданно"=7)

gp_1$tolerance_4<-recode(gp_1$tolerance_4, "Совершенно неоправданно"=1, 
                         "Скорее неоправданно"=2, "В какой-то степени неоправданно"=3,"Нечто среднее"=4,
                         "В какой-то степени оправданно"=5,"Скорее оправданно"=6,
                        "Совершенно оправданно"=7)


```

```{r tolerance 1 index}
gp_1$toler_1_index <- apply(gp_1[,c("tolerance_1","tolerance_2","tolerance_3","tolerance_4")],1,mean,na.rm=TRUE)

```

#VIOLENCE 2
```{r creating viol2 variable}

gp_1$viol_2_m[gp_1$viol_2_m == ""]<-NA
gp_1$viol_2_w[gp_1$viol_2_w == ""] <- NA
gp_1$viol_2_tw[gp_1$viol_2_tw == ""] <- NA
gp_1$viol_2_nw[gp_1$viol_2_nw == ""] <- NA


gp_1$violence_2 <- coalesce(gp_1$viol_2_m,gp_1$viol_2_w,gp_1$viol_2_tw,gp_1$viol_2_nw)
```

```{r recoding violence into numerical}

gp_1$violence_2<-recode(gp_1$violence_2, "Совершенно неагрессивное"=1, 
                         "Скорее  неагрессивное"=2, "В какой-то степени  неагрессивное"=3,"Нечто среднее"=4,
                         "В какой-то степени  агрессивное"=5,"Скорее  агрессивное"=6,
                        "Чрезвычайно  агрессивное"=7)

```

## TOLERANCE 2


```{r creating tolerance 1 variable}

gp_1$toler_2_m_1[gp_1$toler_2_m_1 == ""]<-NA
gp_1$toler_2_w_1[gp_1$toler_2_w_1 == ""] <- NA
gp_1$toler_2_tw_1[gp_1$toler_2_tw_1 == ""] <- NA
gp_1$toler_2_nw._1[gp_1$toler_2_nw._1 == ""] <- NA

gp_1$toler_2_m_2[gp_1$toler_2_m_2 == ""]<-NA
gp_1$toler_2_w_2[gp_1$toler_2_w_2 == ""] <- NA
gp_1$toler_2_tw_2[gp_1$toler_2_tw_2 == ""] <- NA
gp_1$toler_2_nw._2[gp_1$toler_2_nw._2 == ""] <- NA

gp_1$toler_2_m_3[gp_1$toler_2_m_3 == ""]<-NA
gp_1$toler_2_w_3[gp_1$toler_2_w_3 == ""] <- NA
gp_1$toler_2_tw_3[gp_1$toler_2_tw_3 == ""] <- NA
gp_1$toler_2_nw._3[gp_1$toler_2_nw._3 == ""] <- NA

gp_1$toler_2_m_4[gp_1$toler_2_m_4 == ""]<-NA
gp_1$toler_2_w_4[gp_1$toler_2_w_4 == ""] <- NA
gp_1$toler_2_tw_4[gp_1$toler_2_tw_4 == ""] <- NA
gp_1$toler_2_nw._4[gp_1$toler_2_nw._4 == ""] <- NA

gp_1$toler_2_m_5[gp_1$toler_2_m_5 == ""]<-NA
gp_1$toler_2_w_5[gp_1$toler_2_w_5 == ""] <- NA
gp_1$toler_2_tw_5[gp_1$toler_2_tw_5 == ""] <- NA
gp_1$toler_2_nw._5[gp_1$toler_2_nw._5 == ""] <- NA



gp_1$t_2_1 <- coalesce(gp_1$toler_2_m_1,gp_1$toler_2_w_1,gp_1$toler_2_tw_1,gp_1$toler_2_nw._1)

gp_1$t_2_2 <- coalesce(gp_1$toler_2_m_2,gp_1$toler_2_w_2,gp_1$toler_2_tw_2,gp_1$toler_2_nw._2)

gp_1$t_2_3 <- coalesce(gp_1$toler_2_m_3,gp_1$toler_2_w_3,gp_1$toler_2_tw_3,gp_1$toler_2_nw._3)

gp_1$t_2_4 <- coalesce(gp_1$toler_2_m_4,gp_1$toler_2_w_4,gp_1$toler_2_tw_4,gp_1$toler_2_nw._4)

gp_1$t_2_5 <- coalesce(gp_1$toler_2_m_5,gp_1$toler_2_w_5,gp_1$toler_2_tw_5,gp_1$toler_2_nw._5)

```


```{r recoding tolerance variables}

gp_1$t_2_1<-recode(gp_1$t_2_1, "Категорически не согласен(на)"=1, 
                         "Не согласен(на)"=2, "Скорее не согласен(на)"=3,"Нечто среднее"=4,
                         "Немного согласен(на)"=5,"Согласен(на)"=6,
                        "Полностью согласен(на)"=7)

gp_1$t_2_2<-recode(gp_1$t_2_2, "Категорически не согласен(на)"=1, 
                         "Не согласен(на)"=2, "Скорее не согласен(на)"=3,"Нечто среднее"=4,
                         "Немного согласен(на)"=5,"Согласен(на)"=6,
                        "Полностью согласен(на)"=7)

gp_1$t_2_3<-recode(gp_1$t_2_3, "Категорически не согласен(на)"=1, 
                         "Не согласен(на)"=2, "Скорее не согласен(на)"=3,"Нечто среднее"=4,
                         "Немного согласен(на)"=5,"Согласен(на)"=6,
                        "Полностью согласен(на)"=7)

gp_1$t_2_4<-recode(gp_1$t_2_4, "Категорически не согласен(на)"=1, 
                         "Не согласен(на)"=2, "Скорее не согласен(на)"=3,"Нечто среднее"=4,
                         "Немного согласен(на)"=5,"Согласен(на)"=6,
                        "Полностью согласен(на)"=7)

gp_1$t_2_5<-recode(gp_1$t_2_5, "Категорически не согласен(на)"=1, 
                         "Не согласен(на)"=2, "Скорее не согласен(на)"=3,"Нечто среднее"=4,
                         "Немного согласен(на)"=5,"Согласен(на)"=6,
                        "Полностью согласен(на)"=7)
```

```{r tolerance 2 index}

## Remedy reverse coding absolute value (original - max+1)
gp_1$t_2_2 <- abs(gp_1$t_2_2-8)
gp_1$t_2_3 <- abs(gp_1$t_2_3-8)

gp_1$toler_2_index <- apply(gp_1[,c("t_2_1","t_2_2","t_2_3","t_2_4","t_2_5")],1,mean,na.rm=TRUE)

```

#MORALITY
```{r Morality}
gp_1$mor_m_1[gp_1$mor_m_1 == ""]<-NA

gp_1$mor_w_1[gp_1$mor_w_1 == ""] <- NA

gp_1$mor_tw_1[gp_1$mor_tw_1 == ""] <- NA

gp_1$moral_nw_1[gp_1$moral_nw_1 == ""] <- NA

gp_1$mor_1 <- coalesce(gp_1$mor_m_1,gp_1$mor_w_1,gp_1$mor_tw_1,gp_1$moral_nw_1)

```

```{r}
gp_1$mor_1<-recode(gp_1$mor_1, "Совсем не точно"=1, 
                         "Не очень точно"=2, "В какой-то степени точно"=3,"Очень точно"=4,
                         "Чрезвычайно точно"=5)

```

#PETITION
```{r Petition}


gp_1$pet_m[gp_1$pet_m == ""]<-NA

gp_1$pet_w[gp_1$pet_w == ""] <- NA

gp_1$pet_tw[gp_1$pet_tw == ""] <- NA

gp_1$Q51[gp_1$Q51 == ""] <- NA

gp_1$petition_sign <- coalesce(gp_1$pet_m,gp_1$pet_w,gp_1$pet_tw,gp_1$Q51)

```

```{r}
gp_1$petition_sign<-recode(gp_1$petition_sign, "Я не буду подписывать  ни одну из петиций."="no signature", "Я мог бы  подписать петицию, призывающую правительство подавить эти протесты."="in favor of repression petition", "Я мог бы подписать петицию, призывающую правительство гарантировать, что против протестующих не будет применено излишнее насилие."="against repression petition")

```


```{r}
write.csv(gp_1,"/Users/martinnaunov/Desktop/Gender Protesting Data/gp_c.csv", row.names = FALSE)
```



